Method and system for enhanced audio communications in an interactive environment

ABSTRACT

Enhanced audio communications is provided in an interactive environment, such as a gaming environment, having multiple participants. An input audio signal, such as a speech signal, that is originated by one of the multiple participants is received. In addition, one or more instructions that correspond to the input audio signal are received. Based on the one or more instructions, an output audio signal is generated from the input audio signal. The output audio signal is designated for transmission to one or more of the participants.

This application is a divisional of U.S. patent application Ser. No.10/341,205, filed Jan. 13, 2003, the contents of which are incorporatedherein by reference in its entirety.

FIELD OF THE INVENTION

The present invention relates to communications. More particularly, thepresent invention relates to techniques for enhancing interactiveenvironments providing services, such as gaming.

BACKGROUND OF THE INVENTION

On-line multiplayer gaming is a growing consumer market that isprojected to expand as broadband access becomes more pervasive inhouseholds. The allure of on-line gaming is the availability of games ondemand and the ability to match up against opponents from all over theglobe.

Many on-line game providers sponsor on-line game servers that allowplayers to log in and join games at any time. For example, players mayparticipate in games involving sports, warfare, adventure, and sciencefiction themes. Such servers give providers the ability to promote theirgames and products.

One disadvantage of current on-line gaming environments is that playerto player communications, such as audio and voice communications, arelimited. Furthermore, any voice communications in such environments donot provide much realism associated with gaming environments that model,for example, sounds associated with dynamically changing physicalenvironments.

Accordingly, what is needed are techniques for providing enhanced andmore realistic voice and audio communications in interactiveenvironments.

SUMMARY OF THE INVENTION

The present invention is directed to a method of providing enhancedaudio communications in an interactive environment, such as a gamingenvironment, having multiple participants. The method receives an inputaudio signal, such as a speech signal, originated by one of the multipleparticipants. The method also receives one or more instructions thatcorrespond to the input audio signal. Based on the one or moreinstructions, the method generates an output audio signal from the inputaudio signal. The output audio signal is designated for transmission toone or more of the participants.

In generating the output audio signal, the method may set a magnitude ofthe input audio signal. This magnitude may be based, for example, on alocation of the participant that originated the input audio signalwithin a virtual space of the interactive environment. The magnitude mayalso be set so that the output audio signal will be audible to thecorresponding one or more participants when they are within apredetermined virtual space of the interactive environment.

In a further aspect, the magnitude may be set according to a distance ina virtual space of the interactive environment between the one or moreparticipants corresponding to the output audio signal and theparticipant that originated the input audio signal.

In yet a further aspect, the magnitude may be set according toachievements in the interactive environment of one or more of theplurality of participants. Such achievements may include credits (e.g.,scoring points) earned in the interactive environment.

The method may also include combining (e.g., summing) the input audiosignal with one or more other audio signals. These other audio signalsmay be originated by other audio signals and be processed according totechniques similar to those performed on the input audio signal.

Also, the method may alter the input audio signal by performing, forexample, operations that assimilate a speech signal to resemble thevoice of a character associated with the interactive environment. Infurther aspects, the method may monitor the input audio signal for thepresence of information, such as one or more predetermined words. Upondetection of these word(s), the method may update the interactiveenvironment accordingly.

The input audio signal and/or the one or more instructions may bereceived from a server. Also, the method may include sending the outputaudio signal to a server for transmission to the corresponding one ormore participants.

The present invention is also directed to a system for providingenhanced audio communications in an interactive environment (such as agaming environment) having multiple participants. The system includes aserver and an audio bridge. The server receives an input audio signal(e.g., a speech signal) from a participant, and sends an output audiosignal to one or more of the multiple participants. The audio bridgegenerates the output audio signal from the input audio signal.

The audio bridge may set a magnitude for the input audio signal. Thismagnitude may be based on a location of the participant that originatedthe input audio signal within a virtual space of the interactiveenvironment. The audio bridge may also set the magnitude so that theoutput audio signal will be audible to the corresponding one or moreparticipants when they are within a predetermined virtual space of theinteractive environment.

In further aspects of the present invention, the audio bridge may setthe magnitude according to a distance in a virtual space of theinteractive environment between the one or more participantscorresponding to the output audio signal and the participant thatoriginated the input audio signal.

In yet a further aspect, the audio bridge may set the magnitudeaccording to achievements in the interactive environment of one or moreof the plurality of participants. Such achievements may include credits(e.g., scoring points) earned in the interactive environment.

Also, the audio bridge may alter the input audio signal by performing,for example, operations that assimilate a speech signal to resemble thevoice of a character associated with the interactive environment.

In further aspects, the audio bridge may monitor the input audio signalfor the presence of information, such as one or more predeterminedwords. Upon detection of these word(s), the server may update theinteractive environment accordingly.

The audio bridge may also combine the input audio signal with one ormore other audio signals. In addition, the audio bridge may alter one ormore characteristics of the input audio signal.

The system may also include a signal converter that converts between acompressed audio signal format supported by the server, and anuncompressed audio signal format supported by the audio bridge. A localarea network (LAN) may couple the server, the signal converter, and theaudio bridge.

The present invention advantageously provides for realistic audio ininteractive environments. In addition, embodiments of the presentinvention allow for an efficient distribution of processing loads.Further features and advantages of the present invention will becomeapparent from the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, like reference numbers generally indicate identical,functionally similar, and/or structurally similar elements. The drawingin which an element first appears is indicated by the leftmost digit(s)in the reference number. The present invention will be described withreference to the accompanying drawings, wherein:

FIG. 1 is a block diagram of an exemplary operational environment;

FIG. 2 is a diagram of a gaming console implementation;

FIG. 3 is a diagram of an exemplary interactive gaming environment;

FIG. 4 is a block diagram of a gaming host implementation;

FIG. 5 is a block diagram of an audio bridge implementation;

FIG. 6 is a block diagram of an audio processing path;

FIGS. 7 and 8 are flowcharts illustrating operational sequences of thepresent invention; and

FIG. 9 is a block diagram of a computer system implementation.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS I. ExemplaryOperational Environment

Before describing the invention in detail, it is helpful to firstdiscuss an environment in which the invention may be used. Accordingly,FIG. 1 is a block diagram of an exemplary operational environment. Inthis environment, a plurality of gaming consoles 102 participate in aninteractive gaming environment provided by gaming host 112. Toparticipate in this gaming environment, consoles 102 communicate withgaming host 112 across various communications resources.

In particular, FIG. 1 shows that gaming host 112 is connected to a datanetwork 110, such as the Internet. Gaming consoles 102 a and 102 b areeach coupled to a local area network (LAN) 114, such as an Ethernet. Arouter 120 that is also coupled to LAN 114 provides consoles 102 a and102 b with access to data network 110. Gaming consoles 102 c through 102n each connect to data network 110 through an access network 108, suchas a cable network or a digital subscriber line (DSL) network.

In providing the interactive gaming environment, gaming host 112performs several functions. For instance, gaming host 112 maintainsgaming state information, which may be affected by the actions ofparticipants at consoles 102. In addition, gaming host 112 managesinformation, such as participant scoring data, as well as otherinformation associated with the participants and the gaming environment.

Moreover, gaming host 112 handles communications with each console 102.Such communications involve receiving information from participants,such as playing instructions and audio (e.g., voice) signals. Suchcommunications also involve sending information to each of consoles 102.Such information may include current environment state information thatallows each console 102 to output gaming information, such as graphicsand audio signals, to a participant. However, gaming host 112 may notnecessarily transmit the same information to each gaming console 102.For instance, each console 102 may receive different audio signals. Thetransmission of different audio signals may be performed in accordancewith the techniques described herein.

FIG. 2 is a diagram showing an implementation of an exemplary gamingconsole 102. As shown in FIG. 2, the gaming console implementationincludes a communications hardware portion 204, a processor 206, amemory 208, and various input and output devices.

Communications hardware portion 204 may include a modem, such as adial-up modem for connecting to a telephony network or a cable modem forconnecting to a cable network (e.g., a data over cable service interfacespecification (DOCSIS) network). Alternatively, communications hardwareportion 204 may include a network interface card (NIC) for connecting toa LAN.

For audio signals, a participant may input voice signals through amicrophone 210. The participant may receive audio signals from gaminghost 112 through one or more speakers 214. The participant may viewvisual information associated with the gaming environment through adisplay 212. To generate commands and instructions for gaming host 112,the participant may use various input devices. For example, FIG. 2 showsa keyboard 216 and a joystick 218.

The gaming console of FIG. 2 may be implemented with a personalcomputer. Alternatively, the gaming console may be implemented withcommercially available gaming products. Examples of such productsinclude the Xbox manufactured by Microsoft Corporation of Redmond,Wash., the GameCube manufactured by Nintendo of America Inc. of Redmond,Wash., and the Playstation 2 manufactured by Sony Computer EntertainmentInc.

II. Interactive Environment

FIG. 3 is a diagram of an exemplary interactive gaming environment. Thisenvironment includes a virtual space 300 having subspaces 301 a and 301b. Virtual space 300 represents a physical area, such as a sportsplaying field, a battlefield, or a building. Subspaces 301 representportions of virtual space 300. For example, subspaces 301 may representzones or regions on a playing field, occupied territories on abattlefield, or rooms in a building.

As shown in FIG. 3, the interactive environment includes participants302 a-e and 304 a-e. In this environment, participants 302 belong to afirst team, and participants 304 belong to a second team. Each of theseparticipants has a position within virtual space 300. This position isbased on a coordinate system, such as the rectangular (i.e., x-y)coordinate system shown in FIG. 3. From this coordinate system,distances between objects may be determined.

The environment of FIG. 3 is dynamic. Therefore, the positions ofparticipants 302 and 304 may change over time. In addition, thecharacteristics of virtual spaces 300 and 301 a-b may also change intime. Such changes may involve the size, shape and orientation of thesespaces. Although FIG. 3, is a diagram of a two-dimensional physicalspace, virtual environments may represent other dimensional (e.g., 3-D)spaces.

III. Gaming Host

FIG. 4 is a block diagram of a gaming host 112 implementation. As shownin FIG. 4, gaming host 112 includes a gaming server 402, a signalconversion module 404, and an audio bridge 406. In addition, gaming host112 includes an optional gaming information database 408. These elementsare coupled through a communications infrastructure 410, such as ahigh-speed Ethernet local area network (LAN) or a computer system businterface.

Gaming server 402 manages various attributes of the interactive gamingenvironment. These attributes include rules associated with the gamingenvironment, individual participant information, and gaming environmentstate information. Such state information includes scoring data, andspatial parameters associated with virtual spaces and objects within theinteractive environment. These spatial parameters may include positionsof participants, and distances between participants. As described abovewith reference to FIG. 3, these attributes may be dynamic.

FIG. 4 shows that gaming server 402 is directly coupled to data network110. Thus, gaming server 402 is responsible for handling the exchange ofinformation with each console 102. In particular, gaming server 402receives upstream communications 422 in the form of instructions and/oraudio signals from gaming consoles 102. Gaming server 402 processesthese upstream communications and updates state information associatedwith the gaming environment. In addition, gaming server 402 may generateand transmit responses 424 to consoles 102. These responses includecontent, such as display information, scoring information, and textmessages. Additionally, these responses may include audio signalsgenerated by audio bridge 406 according to techniques, such as the onesdescribed herein.

The exchange of upstream communications 422 and responses 424 may be inaccordance with one or more protocols, such as the Internet Protocol(IP) and/or the real-time protocol (RTP). Additionally, to maintainsynchronization between gaming participants, gaming server 402 mayregulate the precise times at which information is transmitted to eachof consoles 102.

The audio signals that gaming server 402 exchanges with consoles 102 maybe in various formats. For example, these audio signals may becompressed to efficiently utilize bandwidth provided by data network110. For example, algorithms, such as G.723 and G.723.1, as defined bythe International Telecommunication Union (ITU) may be employed tocompress these audio signals. These algorithms provide for bit rates of6.3 and 5.4 kbps and use linear predicitive encoding and dictionaries tohelp provide smoothing.

Gaming server 402 forwards the audio signals received from consoles 102to audio bridge 406 for processing. In turn, audio bridge 406 returnsprocessed audio signals to gaming server 402 for distribution toconsoles 102. Unlike the compressed signals exchanged with consoles 102,audio bridge 406 handles uncompressed waveform-encoded audio signals.For example, audio bridge may handle audio signals encoded according tothe ITU G.711 algorithm. This algorithm provides for the transmission ofpulse code modulated (PCM) voice signals at digital bit rates of 48, 56,and 64 Kbps.

To convert between compressed and uncompressed formats, signalconversion module 404 operates as an interface between gaming server 402and audio bridge 406. Thus, module 404 converts compressed audio signals426 received from gaming server 402 into uncompressed waveform-encodedsignals 428 that are sent to audio bridge 406. Conversely, module 404converts uncompressed audio signals 430 received from audio bridge 406into compressed signals 432 that are sent to gaming server 402 fordistribution to consoles 102.

Audio bridge 406 generates output audio signals 430 according toinstructions 434 received from gaming server 402. In addition togenerating audio signals 430, audio bridge 406 may perform speechrecognition operations on audio signals 428. These operations involvedetecting whether certain words and phrases are present in audio signals428.

As shown in FIG. 4, audio bridge 406 receives instructions 434 fromgaming server 402. Instructions 434 direct the manner in which audiobridge 406 processes audio signals 428. In addition, instructions 434may indicate words and phrases to be detected by speech recognitiontechnology. FIG. 4 also shows that audio bridge 406 sends responses 436to gaming server 402. These responses may convey various types ofinformation. For instance, responses 436 may report the identificationof certain words and phrases in audio signals 428. Upon receipt of suchinformation, gaming server 402 may update the interactive gamingenvironment accordingly.

Audio bridge 406 may advantageously remove certain processing loads fromgaming server 402. For example, embodiments of the present inventionallow processing loads associated with audio (e.g., speech) signalprocessing to be transferred from gaming server 402 to audio bridge 406.Accordingly, in embodiments of the present invention, audio bridge 406may be implemented as a computer system (such as the exemplary computersystem described below with reference to FIG. 9) that employs one ormore digital signal processors (DSPs) to provide efficient signalprocessing operations.

FIG. 4 shows that gaming host 112 may include an optional gaminginformation database 408. Database 408 may store information, suchparticipant account information. This account information may includepasswords and security information that gaming server 402 utilizes whena participant requests to join.

IV. Audio Bridge

An implementation of audio bridge 406 is shown FIG. 5. Thisimplementation includes a plurality of audio processing paths 502, aninput interface 504, and an output interface 506. FIG. 5 shows thatinput interface 504 receives transmissions 530 from gaming server 402.These transmissions include instructions 434 and audio signals 428.

Input interface 504 also includes routing capabilities. Thesecapabilities enable input interface 504 to forward signals andinstructions to the appropriate audio processing path(s) 502. Forinstance, FIG. 5 shows that input interface 504 forwards audio signals428 a-428 n to each of audio processing paths 502 a-n. Also, FIG. 5shows that input interface 504 forwards instructions 434 a to audioprocessing path 502 a, instructions 434 b to audio processing path 502b, and instructions 434 n to audio processing path 502 n.

FIG. 5 shows that audio bridge 406 includes n processing paths 502. Eachof these processing paths corresponds to a group of one or morerecipient consoles 102. Accordingly, each processing path 502 generatesan output audio signal 430 that is designated for transmission by gamingserver 402 to the corresponding recipient console(s) 102. The generationof output audio signals 430 may involve various processes. For example,these processes may include scaling operations and signal mixingoperations. The manner in which such operations are performed isdetermined by instructions 434.

In addition, each processing path 502 may perform operations to alterthe characteristics of individual audio signals. These operations mayinclude the addition of various effects such as reverberation, pitchalteration, and character assimilation. Character assimilation involveschanging the properties of speech signals so that they sound as ifanother person, such as a fictional game character, uttered them.

Moreover, each processing path 502 may monitor signals 428 for certaininformation. For example, each processing path 520 may employ speechrecognition techniques to detect predetermined words and phrases. Asdescribed above, gaming server 402 may transmit these predeterminedwords and phrases to audio bridge 406 in the form of instructions 434.

As shown in FIG. 5, each processing path 502 may generate responses 436that are sent to output interface 506 for transmission to gaming server402. Responses 436 may convey various forms of information to gamingserver 402. For instance, responses 436 may convey the detection ofwords and phrases indicated by instructions 434.

Output interface 506 receives audio signals 430 and responses 436, andformats them into transmissions 532 that are sent across communicationsinfrastructure 410. In embodiments where communications infrastructure410 is an Ethernet LAN, transmissions 532 include one or more Ethernetpackets.

FIG. 6 is a block diagram showing an implementation of an audioprocessing path 502. FIG. 6 shows that, for each input audio signal 428,the audio processing path implementation includes a signal monitoringmodule 602, and a signal alteration module 604. FIG. 6 also shows thatthe audio processing path implementation includes a signal mixingportion 605.

In addition, FIG. 6 shows that instructions 434 include various messagesgenerated by gaming server 402. These messages are sent to differentelements within audio processing path 502. These messages include signalmonitoring keywords 620 that are sent to signal monitoring modules 602,signal alteration commands 622 that are sent to signal alterationmodules 604, and scaling coefficients 624 that are sent to signal mixingportion 605.

Each signal monitoring module 602 employs speech recognition technologyto identify words and/or phrases in received audio signals 428. Thesewords and/or phrases are provided by content server 402 as signalmonitoring keywords 620. When a signal monitoring module 602 detects thepresence of any such words and/or phrases, it generates a detectionmessage 626 to be sent to gaming server 402 as a response 436. Detectionmessages 626 may indicate the words and/or phrases detected, theidentity of the audio signal 428 containing the words and/or phrases,and the time of the detection.

Each signal alteration module 604 generates an audio signal 428′ from areceived audio signal 428. In generating these signals, each module 604may alter the characteristics of the received audio signal 428. Forexample, signal alteration modules 604 may add effects, such asreverberation, pitch alteration, and character assimilation. To performthese functions, signal alteration module 604 may perform variousdigital signal processing operations and algorithms. Each module 604performs such operations in response to commands 622 received fromgaming server 402. Accordingly, such signal alteration operations areoptional.

Signal mixing portion 605 receives audio signals 428′ (potentiallyaltered by signal alteration modules 604) and mixes these signals toproduce an output audio signal 430. Signal mixing portion 605 may beimplemented using digital signal processing techniques. Accordingly, asignal flow representation of such an implementation is provided in FIG.6. This implementation includes a plurality of scaling nodes 606, and acombining node 608. Each scaling node 606 multiplies an audio signal 428(either altered or unaltered) with a corresponding scaling coefficient624 that is provided by gaming server 402. As shown in FIG. 6, eachmultiplication results in a scaled audio signal 428″, which is sent tocombining node 608.

Combining node 608 receives signals 428″ and combines (e.g., adds) themto produce an output audio signal 430. As described above with referenceto FIG. 5, the output audio signal 430 is sent to output interface 506,where it is formatted for transmission across communicationsinfrastructure 410.

V. Operation

FIG. 7 is a flowchart illustrating an operational sequence according tothe present invention. This sequence may be employed in an interactiveenvironment, such as the interactive gaming environment of FIG. 3. Thisoperational sequence is described with reference to the gaming hostimplementation described above with reference to FIGS. 4 through 6.However, this sequence may be employed in other contexts.

The sequence of FIG. 7 demonstrates techniques of the present inventionthat advantageously allow audio signals to be dynamically controlledbased on real-time conditions of an interactive environment. As aresult, the interactive environment provides participants with enhancedaudio communications.

As shown in FIG. 7, this sequence includes a step 702. In this step, aninput audio signal is received. This signal is originated by one of aplurality of participants, such as the participants operating gamingconsoles 102. Accordingly, the input audio signal may be a speech signaluttered by the participant. In the context of FIG. 4, this step includesaudio bridge 406 receiving an input audio signal 428 from gaming server402.

In a step 704, one or more processing instructions are received. In thecontext of FIG. 4, this step includes audio bridge 406 receivinginstructions from gaming server 402. These instructions correspond tothe input audio signal, and may be based on the current state of theinteractive environment provided by gaming server 402. In the context ofFIG. 4, this step comprises audio bridge 406 receiving one or moreinstructions 434 from gaming server 402.

In a step 706, an output audio signal is generated from the input audiosignal. This generation is based on the one or more instructionsreceived in step 704. The output audio signal generated in step 706 isdesignated for transmission to one or more of the participants in theinteractive environment (referred to herein as designated recipient(s)).In the context of FIG. 4, this step comprises audio bridge 406generating an output audio signal 430 from input audio signal 428. Asshown in FIG. 7, step 706 may include various optional steps that aredescribed below.

In a step 708, the output audio signal generated in step 706 is preparedfor transmission to the corresponding one or more participants. Forinstance, in this step, audio bridge 406 may deliver output audio signal430 to gaming server 402 for transmission to consoles 102.

Step 706 may include various optional steps. Any combination of suchoptional steps may be performed concurrently or in various sequentialorders. As examples, FIG. 7 illustrates optional steps 720, 722, 724,and 726.

In optional step 720, the input signal is monitored for information.Accordingly, step 720 may comprise the employment of speech recognitiontechnology to recognize certain words and/or phrases. In the context ofFIG. 4, these words and/or phrases (i.e., multiple words) may beprovided by gaming server 402 through one or more instructions 434. Ifcertain information (such as provided words and/or phrases) aredetected, then step 720 may include providing an indication of suchdetection. In the context of FIG. 4, such indications may be in the formof responses 436.

Such indications may affect the interactive environment. Accordingly, aninteractive gaming environment may be affected by the detection ofcertain words and/or phrases. This feature may be employed in gamingenvironments involving themes such as fantasy and science fiction. Insuch environments, a participant may enter a virtual space thatrepresents, for example, a castle. When this occurs, input signalsoriginated by the participant are monitored for one or more phrases,such as “come out dragon.”

If this phrase is detected, an indication is provided and the gamingenvironment reacts to the occurrence of this phrase. This reaction mayinclude a dragon entering the virtual space. In the context of FIG. 4,such gaming environment reactions are performed by gaming server 402.

Such reactions may require other conditions to also occur. For instance,with reference to the environment of FIG. 1, the participant may need tomake other forms of input that is concurrent with the uttering of suchphrases. Such other forms of input may include the pressing of certainkeyboard keys on its console 102.

In optional step 722, the input signal is altered. Accordingly, thisstep may include the addition of various effects to the input audiosignal. Examples of such effects include reverberation, pitchalteration, and character assimilation. For instance, in an interactivegaming environment, voice signals originated by a gaming participant maybe altered based on the location of the originating participant within avirtual space. For example, effects such as reverberation may be addedwhen the originating participant is in a space that represents (i.e.,models), for example, a cave.

In step 724, a magnitude of the input audio signal is set. Thismagnitude may be set according to various factors. One factor is thelocation of the participant that originated the input audio signalwithin a virtual space of the interactive environment. For example, themagnitude of the input audio signal may be set so that the output audiosignal will be audible to the corresponding one or more participantswhen they are within a predetermined virtual space of the interactiveenvironment. This predetermined space may be the virtual space that theparticipant who originated the input audio signal is within.

An example of this technique is provided with reference to theenvironment of FIG. 3. In this example, participant 302 a originates aninput audio signal and participant 304 b is a designated recipient. Whenvirtual space 300 is the predetermined space, the magnitude of the audiosignal is set in step 724 so that the generated output signal will beaudible to participant 304 b. However, when the virtual space issubspace 301 a, the magnitude of the audio signal is set in step 724 sothat the generated output signal will not be audible to participant 304b. To make this signal inaudible, its magnitude may be set to zero.

Another factor for setting a magnitude of the input audio signal in step724 is the distance in a virtual space between the designatedrecipient(s) and the participant that originated the input audio signal.For instance, as this distance increases, the signal magnitudedecreases. Likewise, as this distance decreases, the signal magnitudedecreases.

An example of this distance-based technique is provided with referenceto the environment of FIG. 3. In this example, participant 302 aoriginates an input audio signal. When participant 302 b is a designatedrecipient, the magnitude of the audio signal is set in step 724 to afirst level. However, when participant 304 b is the designatedrecipient, the magnitude of the audio signal is set in step 724 to asecond level that is less than the first level.

A further factor for setting a magnitude of the input audio signal instep 724 is whether the designated recipient is within a predeterminedgroup of participants. Such predetermined groups may be based, forexample, on team membership. For instance, in the environment of FIG. 3,when participants 304 a-e are designated recipients, the magnitude of asignal originated by participant 304 a will be set in step 724 to beaudible. However, the magnitude of a signal originated by participant302 a will be set in step 724 to be inaudible.

Input audio signal magnitudes may also be set in step 724 according tothe achievements in the interactive environment of one or moreparticipants, such as the designated recipient(s). Such achievements maybe attained, for example, through earning a predetermined number of gamepoints, rewards, or credits.

As an example, this feature may implemented in an interactiveenvironment that provides an on-line football game. In this example,each player (i.e., participant) in a team's huddle may originate inputaudio (e.g., speech) signals. These input signals each have one or morecorresponding designated recipients on the opposing team. If thedesignated recipient(s) have accumulated a predetermined number ofcredits (e.g., scoring points, yards, number of receptions, etc.), thenthe magnitude of such input audio signals may be set so that they areaudible to the designated recipients.

In the audio processing path implementation described above withreference to FIG. 6, such magnitudes are set by scaling nodes 606. Asdescribed above, scaling nodes 606 scale audio signals 626 according toscaling coefficients 624 that are received from gaming server 402. Thus,to implement magnitude setting features of the present invention, gamingserver 402 may determine scaling coefficients 624 according tocharacteristics of the interactive environment.

In optional step 726, the input audio signal is combined (e.g., summed)with one or more other audio signals. These other audio signals may alsobe originated by participants in the interactive environment. Thus, theymay also be processed in similar ways as the input audio signal. Withreference to the audio processing path implementation of FIG. 6, suchcombining is performed by combining node 608.

FIG. 8 is a flowchart of an exemplary operational sequence performed bygaming server 402. This sequence includes a step 802, in which gamingserver 402 configures audio bridge 406. This step may includeestablishing the number of audio processing paths 502, and thedesignated recipients and originating participant(s) for each audioprocessing path 502. In the context of a gaming environment, this stepmay be performed at the beginning of a game or at any time when theparticipants in the game change.

In a step 804, gaming server 402 updates the gaming environment. Thisstep includes processing according to gaming software that it isexecuting, as well as actions by each participant. As a result of thisprocessing, environment characteristics, such as spatial parameters andscoring data may change.

In a step 806, gaming server 402 sends instructions 434 and audiosignals 426 to audio bridge 406. As described above, these instructionsmay be sent to audio bridge 406 directly, while these audio signals maybe sent via conversion module 404.

In step 808, gaming server 402 receives output audio signals 432. Theseoutput audio signals may be processed according to the techniquesdescribed above. For instance, these output audio signals may bereceived via conversion module 404. In step 810 the output audio signalsare transmitted to one or more corresponding participants. Thesetransmitted signals may be compressed to conserve communicationsbandwidth.

In embodiments of the present invention, the steps of FIG. 8 may each beperformed continuously. In addition, other steps may be included.

VI. Computer System

As described above, various elements may be implemented with one or morecomputer systems. These elements include gaming server 402, signalconversion module 404, audio bridge 406, and consoles 102. An example ofa computer system 901 is shown in FIG. 9.

Computer system 901 represents any single or multi-processor computer.Single-threaded and multi-threaded computers can be used. Unified ordistributed memory systems can be used. Computer system 901 includes oneor more processors, such as processor 904. These processor(s) may be,for example, commercially available general purpose processors orspecial purpose (e.g., digital signal processing) processors. One ormore processors 904 can execute software implementing the processesdescribed above. Each processor 904 is connected to a communicationinfrastructure 902 (for example, a communications bus, cross-bar, ornetwork). Various software embodiments are described in terms of thisexemplary computer system. After reading this description, it willbecome apparent to a person skilled in the relevant art how to implementthe invention using other computer systems and/or computerarchitectures.

Computer system 901 also includes a main memory 907, which is preferablyrandom access memory (RAM). Computer system 901 may also include asecondary memory 908. Secondary memory 908 may include, for example, ahard disk drive 910 and/or a removable storage drive 912, representing afloppy disk drive, a magnetic tape drive, an optical disk drive, etc.Removable storage drive 912 reads from and/or writes to a removablestorage unit 914 in a well known manner. Removable storage unit 914represents a floppy disk, magnetic tape, optical disk, etc., which isread by and written to by removable storage drive 912. As will beappreciated, the removable storage unit 914 includes a computer usablestorage medium having stored therein computer software and/or data.

In alternative embodiments, secondary memory 908 may include othersimilar means for allowing computer programs or other instructions to beloaded into computer system 901. Such means can include, for example, aremovable storage unit 922 and an interface 920. Examples can include aprogram cartridge and cartridge interface (such as that found in videogame devices), a removable memory chip (such as an EPROM, or PROM) andassociated socket, and other removable storage units 922 and interfaces920 which allow software and data to be transferred from the removablestorage unit 922 to computer system 901.

Computer system 901 may also include a communications interface 924.Communications interface 924 allows software and data to be transferredbetween computer system 901 and external devices via communications path927. Examples of communications interface 927 include a modem, a networkinterface (such as Ethernet card), a communications port, etc. Softwareand data transferred via communications interface 927 are in the form ofsignals 928 which can be electronic, electromagnetic, optical or othersignals capable of being received by communications interface 924, viacommunications path 927. Note that communications interface 924 providesa means by which computer system 901 can interface to a network such asthe Internet.

The present invention can be implemented using software running (thatis, executing) in an environment similar to that described above withrespect to FIG. 9. In this document, the term “computer program product”is used to generally refer to removable storage units 914 and 922, ahard disk installed in hard disk drive 910, or a signal carryingsoftware over a communication path 927 (wireless link or cable) tocommunication interface 924. A computer useable medium can includemagnetic media, optical media, or other recordable media, or media thattransmits a carrier wave or other signal. These computer programproducts are means for providing software to computer system 901.

Computer programs (also called computer control logic) are stored inmain memory 907 and/or secondary memory 908. Computer programs can alsobe received via communications interface 924. Such computer programs,when executed, enable the computer system 901 to perform the features ofthe present invention as discussed herein. In particular, the computerprograms, when executed, enable the processor 904 to perform thefeatures of the present invention. Accordingly, such computer programsrepresent controllers of the computer system 901.

The present invention can be implemented as control logic in software,firmware, hardware or any combination thereof. In an embodiment wherethe invention is implemented using software, the software may be storedin a computer program product and loaded into computer system 901 usingremovable storage drive 912, hard drive 910, or interface 920.Alternatively, the computer program product may be downloaded tocomputer system 901 over communications path 927. The control logic(software), when executed by the one or more processors 904, causes theprocessor(s) 904 to perform the functions of the invention as describedherein.

In another embodiment, the invention is implemented primarily infirmware and/or hardware using, for example, hardware components such asapplication specific integrated circuits (ASICs). Implementation of ahardware state machine so as to perform the functions described hereinwill be apparent to persons skilled in the relevant art(s).

VII. Conclusion

While various embodiments of the present invention have been describedabove, it should be understood that they have been presented by way ofexample only, and not limitation. It will be apparent to persons skilledin the relevant art that various changes in form and detail can be madetherein without departing from the spirit and scope of the invention.For example, the present invention may be employed in interactiveenvironments that do not involve gaming.

Thus, the breadth and scope of the present invention should not belimited by any of the above-described exemplary embodiments, but shouldbe defined only in accordance with the following claims and theirequivalents.

1. A computer-readable medium storing instructions for controlling adevice to provide audio communications in an interactive environmenthaving a plurality of entities controlled by a plurality ofparticipants, the instructions comprising: (a) receiving an input audiosignal originated by one of the plurality of participants; (b) receivinginformation associated with goals achieved by the one of the pluralityof participants; and (c) based on the information, generating an outputaudio signal from the input audio signal, wherein a magnitude of theoutput audio signal is based at least in part on the goals achieved inthe interactive environment by the one of the plurality of participants.2. The computer-readable medium of claim 1, wherein step (c) comprisesthe step of setting a magnitude of the output audio signal.
 3. Thecomputer-readable medium of claim 2, wherein the setting step furthercomprises setting the magnitude based on a location of an entity withina virtual space of the interactive environment, the entity beingcontrolled by the participant that originated the input audio signal. 4.The computer-readable medium of claim 2, wherein said setting stepcomprises setting the magnitude so that the output audio signal will beaudible to the corresponding one or more participants when theircorresponding entities are within a predetermined virtual space of theinteractive environment.
 5. The computer-readable medium of claim 2,wherein said setting step comprises setting the magnitude according to adistance in a virtual space of the interactive environment between theone or more entities corresponding to the output audio signal and theparticipant that originated the input audio signal.
 6. Thecomputer-readable medium of claim 1, wherein the goals achieved includeat least one of credits earned in the interactive environment or pointsscored.
 7. The computer-readable medium of claim 1, wherein theinstructions further comprise: (d) delivering the output audio signal toa server for transmission to the corresponding one or more participants.8. The computer-readable medium of claim 1, wherein the input audiosignal is a speech signal.
 9. The computer-readable medium of claim 1,wherein the interactive environment is an interactive gamingenvironment.
 10. The computer-readable medium of claim 1, wherein step(a) comprises receiving the input audio signal from a server.
 11. Thecomputer-readable medium of claim 1, wherein step (b) comprisesreceiving the information from a server.
 12. The computer-readablemedium of claim 1, wherein step (c) comprises combining the input audiosignal with one or more other audio signals.
 13. The computer-readablemedium of claim 12, wherein said combining step comprises summing theinput audio signal and the one or more other audio signals.
 14. Thecomputer-readable medium of claim 1, wherein step (c) comprises alteringcharacteristics of the input audio signal.
 15. The computer-readablemedium of claim 14, wherein the altering step comprises adding one ormore effects to the input audio signal.
 16. The computer-readable mediumof claim 14, wherein the altering step comprises performing characterassimilation.
 17. The computer-readable medium of claim 1, wherein theinstructions further comprise: (d) monitoring the input audio signal forthe presence of one or more predetermined words, the predetermined wordsto be included in the output audio signals.
 18. The computer-readablemedium of claim 17, wherein the instructions further comprise: (e)updating the interactive environment upon the recognition of the one ormore predetermined words in step (d).
 19. A system for providing audiocommunications in an interactive environment having a plurality ofentities controlled by a plurality of participants, the systemcomprising: a module configured to receive an input audio signal fromone of the plurality of participants, and a module configured to send anoutput audio signal to one or more of the plurality of participants; andan audio bridge adapted to generate the output audio signal from theinput audio signal, wherein a magnitude of the output audio signal isbased at least in part on goals achieved by the one of the plurality ofparticipants in the interactive environment.
 20. The system of claim 19,wherein the audio bridge is adapted to set a magnitude for the outputaudio signal.
 21. The system of claim 20, wherein the audio bridge isfurther adapted to set the magnitude based on a location of the entityassociated with the participant that originated the input audio signalwithin a virtual space of the interactive environment.
 22. The system ofclaim 20, wherein the audio bridge is further adapted to set themagnitude so that the output audio signal will be audible to thecorresponding one or more participants when their corresponding entitiesare within a predetermined virtual space of the interactive environment.23. The system of claim 20, wherein the audio bridge is further adaptedto set the magnitude according to a distance in a virtual space of theinteractive environment between the entities associated with the one ormore participants corresponding to the output audio signal and theparticipant that originated the input audio signal.
 24. The system ofclaim 19, wherein the goals achieved include at least one of creditsearned in the interactive environment or points scored.
 25. The systemof claim 19, further comprising a signal converter adapted to convertbetween a compressed audio signal format supported by a computingdevice, and an uncompressed audio signal format supported by the audiobridge.
 26. The system of claim 25, further comprising a local areanetwork coupled to the computing device, the signal converter, and theaudio bridge.
 27. The system of claim 19, wherein the input audio signalis a voice signal.
 28. The system of claim 19, wherein the interactiveenvironment is an interactive gaming environment.
 29. The system ofclaim 19, wherein the audio bridge is further adapted to combine theinput audio signal with one or more other audio signals.
 30. The systemof claim 19, wherein the audio bridge is further adapted to: (1) alterone or more characteristics of the input audio signal, (2) alter one ormore characteristics of the input audio signal to perform characterassimilation, or (3) monitor the input audio signal for the presence ofone or more predetermined words.
 31. The system of claim 30, wherein thesystem is adapted to update the interactive environment upon therecognition of the one or more predetermined words by the audio bridge.